package com.akk.module.user.entity;

import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Component
public class UserAgentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public UserAgentExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andAgentIdIsNull() {
            addCriterion("agent_id is null");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNotNull() {
            addCriterion("agent_id is not null");
            return (Criteria) this;
        }

        public Criteria andAgentIdEqualTo(String value) {
            addCriterion("agent_id =", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotEqualTo(String value) {
            addCriterion("agent_id <>", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThan(String value) {
            addCriterion("agent_id >", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThanOrEqualTo(String value) {
            addCriterion("agent_id >=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThan(String value) {
            addCriterion("agent_id <", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThanOrEqualTo(String value) {
            addCriterion("agent_id <=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLike(String value) {
            addCriterion("agent_id like", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotLike(String value) {
            addCriterion("agent_id not like", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIn(List<String> values) {
            addCriterion("agent_id in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotIn(List<String> values) {
            addCriterion("agent_id not in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdBetween(String value1, String value2) {
            addCriterion("agent_id between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotBetween(String value1, String value2) {
            addCriterion("agent_id not between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentNameIsNull() {
            addCriterion("agent_name is null");
            return (Criteria) this;
        }

        public Criteria andAgentNameIsNotNull() {
            addCriterion("agent_name is not null");
            return (Criteria) this;
        }

        public Criteria andAgentNameEqualTo(String value) {
            addCriterion("agent_name =", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameNotEqualTo(String value) {
            addCriterion("agent_name <>", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameGreaterThan(String value) {
            addCriterion("agent_name >", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameGreaterThanOrEqualTo(String value) {
            addCriterion("agent_name >=", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameLessThan(String value) {
            addCriterion("agent_name <", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameLessThanOrEqualTo(String value) {
            addCriterion("agent_name <=", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameLike(String value) {
            addCriterion("agent_name like", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameNotLike(String value) {
            addCriterion("agent_name not like", value, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameIn(List<String> values) {
            addCriterion("agent_name in", values, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameNotIn(List<String> values) {
            addCriterion("agent_name not in", values, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameBetween(String value1, String value2) {
            addCriterion("agent_name between", value1, value2, "agentName");
            return (Criteria) this;
        }

        public Criteria andAgentNameNotBetween(String value1, String value2) {
            addCriterion("agent_name not between", value1, value2, "agentName");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(String value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(String value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(String value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(String value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(String value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLike(String value) {
            addCriterion("user_id like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotLike(String value) {
            addCriterion("user_id not like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<String> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<String> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(String value1, String value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(String value1, String value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andAgentRateIsNull() {
            addCriterion("agent_rate is null");
            return (Criteria) this;
        }

        public Criteria andAgentRateIsNotNull() {
            addCriterion("agent_rate is not null");
            return (Criteria) this;
        }

        public Criteria andAgentRateEqualTo(Double value) {
            addCriterion("agent_rate =", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateNotEqualTo(Double value) {
            addCriterion("agent_rate <>", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateGreaterThan(Double value) {
            addCriterion("agent_rate >", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateGreaterThanOrEqualTo(Double value) {
            addCriterion("agent_rate >=", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateLessThan(Double value) {
            addCriterion("agent_rate <", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateLessThanOrEqualTo(Double value) {
            addCriterion("agent_rate <=", value, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateIn(List<Double> values) {
            addCriterion("agent_rate in", values, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateNotIn(List<Double> values) {
            addCriterion("agent_rate not in", values, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateBetween(Double value1, Double value2) {
            addCriterion("agent_rate between", value1, value2, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentRateNotBetween(Double value1, Double value2) {
            addCriterion("agent_rate not between", value1, value2, "agentRate");
            return (Criteria) this;
        }

        public Criteria andAgentStatusIsNull() {
            addCriterion("agent_status is null");
            return (Criteria) this;
        }

        public Criteria andAgentStatusIsNotNull() {
            addCriterion("agent_status is not null");
            return (Criteria) this;
        }

        public Criteria andAgentStatusEqualTo(Integer value) {
            addCriterion("agent_status =", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusNotEqualTo(Integer value) {
            addCriterion("agent_status <>", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusGreaterThan(Integer value) {
            addCriterion("agent_status >", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("agent_status >=", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusLessThan(Integer value) {
            addCriterion("agent_status <", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusLessThanOrEqualTo(Integer value) {
            addCriterion("agent_status <=", value, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusIn(List<Integer> values) {
            addCriterion("agent_status in", values, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusNotIn(List<Integer> values) {
            addCriterion("agent_status not in", values, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusBetween(Integer value1, Integer value2) {
            addCriterion("agent_status between", value1, value2, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andAgentStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("agent_status not between", value1, value2, "agentStatus");
            return (Criteria) this;
        }

        public Criteria andJoinCashIsNull() {
            addCriterion("join_cash is null");
            return (Criteria) this;
        }

        public Criteria andJoinCashIsNotNull() {
            addCriterion("join_cash is not null");
            return (Criteria) this;
        }

        public Criteria andJoinCashEqualTo(Double value) {
            addCriterion("join_cash =", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashNotEqualTo(Double value) {
            addCriterion("join_cash <>", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashGreaterThan(Double value) {
            addCriterion("join_cash >", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashGreaterThanOrEqualTo(Double value) {
            addCriterion("join_cash >=", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashLessThan(Double value) {
            addCriterion("join_cash <", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashLessThanOrEqualTo(Double value) {
            addCriterion("join_cash <=", value, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashIn(List<Double> values) {
            addCriterion("join_cash in", values, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashNotIn(List<Double> values) {
            addCriterion("join_cash not in", values, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashBetween(Double value1, Double value2) {
            addCriterion("join_cash between", value1, value2, "joinCash");
            return (Criteria) this;
        }

        public Criteria andJoinCashNotBetween(Double value1, Double value2) {
            addCriterion("join_cash not between", value1, value2, "joinCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashIsNull() {
            addCriterion("ensure_cash is null");
            return (Criteria) this;
        }

        public Criteria andEnsureCashIsNotNull() {
            addCriterion("ensure_cash is not null");
            return (Criteria) this;
        }

        public Criteria andEnsureCashEqualTo(Double value) {
            addCriterion("ensure_cash =", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashNotEqualTo(Double value) {
            addCriterion("ensure_cash <>", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashGreaterThan(Double value) {
            addCriterion("ensure_cash >", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashGreaterThanOrEqualTo(Double value) {
            addCriterion("ensure_cash >=", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashLessThan(Double value) {
            addCriterion("ensure_cash <", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashLessThanOrEqualTo(Double value) {
            addCriterion("ensure_cash <=", value, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashIn(List<Double> values) {
            addCriterion("ensure_cash in", values, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashNotIn(List<Double> values) {
            addCriterion("ensure_cash not in", values, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashBetween(Double value1, Double value2) {
            addCriterion("ensure_cash between", value1, value2, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andEnsureCashNotBetween(Double value1, Double value2) {
            addCriterion("ensure_cash not between", value1, value2, "ensureCash");
            return (Criteria) this;
        }

        public Criteria andHtValidDateIsNull() {
            addCriterion("ht_valid_date is null");
            return (Criteria) this;
        }

        public Criteria andHtValidDateIsNotNull() {
            addCriterion("ht_valid_date is not null");
            return (Criteria) this;
        }

        public Criteria andHtValidDateEqualTo(Date value) {
            addCriterion("ht_valid_date =", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateNotEqualTo(Date value) {
            addCriterion("ht_valid_date <>", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateGreaterThan(Date value) {
            addCriterion("ht_valid_date >", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateGreaterThanOrEqualTo(Date value) {
            addCriterion("ht_valid_date >=", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateLessThan(Date value) {
            addCriterion("ht_valid_date <", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateLessThanOrEqualTo(Date value) {
            addCriterion("ht_valid_date <=", value, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateIn(List<Date> values) {
            addCriterion("ht_valid_date in", values, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateNotIn(List<Date> values) {
            addCriterion("ht_valid_date not in", values, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateBetween(Date value1, Date value2) {
            addCriterion("ht_valid_date between", value1, value2, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtValidDateNotBetween(Date value1, Date value2) {
            addCriterion("ht_valid_date not between", value1, value2, "htValidDate");
            return (Criteria) this;
        }

        public Criteria andHtNumIsNull() {
            addCriterion("ht_num is null");
            return (Criteria) this;
        }

        public Criteria andHtNumIsNotNull() {
            addCriterion("ht_num is not null");
            return (Criteria) this;
        }

        public Criteria andHtNumEqualTo(String value) {
            addCriterion("ht_num =", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumNotEqualTo(String value) {
            addCriterion("ht_num <>", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumGreaterThan(String value) {
            addCriterion("ht_num >", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumGreaterThanOrEqualTo(String value) {
            addCriterion("ht_num >=", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumLessThan(String value) {
            addCriterion("ht_num <", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumLessThanOrEqualTo(String value) {
            addCriterion("ht_num <=", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumLike(String value) {
            addCriterion("ht_num like", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumNotLike(String value) {
            addCriterion("ht_num not like", value, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumIn(List<String> values) {
            addCriterion("ht_num in", values, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumNotIn(List<String> values) {
            addCriterion("ht_num not in", values, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumBetween(String value1, String value2) {
            addCriterion("ht_num between", value1, value2, "htNum");
            return (Criteria) this;
        }

        public Criteria andHtNumNotBetween(String value1, String value2) {
            addCriterion("ht_num not between", value1, value2, "htNum");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNull() {
            addCriterion("phone is null");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNotNull() {
            addCriterion("phone is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneEqualTo(String value) {
            addCriterion("phone =", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotEqualTo(String value) {
            addCriterion("phone <>", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThan(String value) {
            addCriterion("phone >", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("phone >=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThan(String value) {
            addCriterion("phone <", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThanOrEqualTo(String value) {
            addCriterion("phone <=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLike(String value) {
            addCriterion("phone like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotLike(String value) {
            addCriterion("phone not like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneIn(List<String> values) {
            addCriterion("phone in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotIn(List<String> values) {
            addCriterion("phone not in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneBetween(String value1, String value2) {
            addCriterion("phone between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotBetween(String value1, String value2) {
            addCriterion("phone not between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPasswordIsNull() {
            addCriterion("password is null");
            return (Criteria) this;
        }

        public Criteria andPasswordIsNotNull() {
            addCriterion("password is not null");
            return (Criteria) this;
        }

        public Criteria andPasswordEqualTo(String value) {
            addCriterion("password =", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotEqualTo(String value) {
            addCriterion("password <>", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordGreaterThan(String value) {
            addCriterion("password >", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordGreaterThanOrEqualTo(String value) {
            addCriterion("password >=", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLessThan(String value) {
            addCriterion("password <", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLessThanOrEqualTo(String value) {
            addCriterion("password <=", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLike(String value) {
            addCriterion("password like", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotLike(String value) {
            addCriterion("password not like", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordIn(List<String> values) {
            addCriterion("password in", values, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotIn(List<String> values) {
            addCriterion("password not in", values, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordBetween(String value1, String value2) {
            addCriterion("password between", value1, value2, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotBetween(String value1, String value2) {
            addCriterion("password not between", value1, value2, "password");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("email is null");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("email not between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdIsNull() {
            addCriterion("up_agent_id is null");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdIsNotNull() {
            addCriterion("up_agent_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdEqualTo(String value) {
            addCriterion("up_agent_id =", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdNotEqualTo(String value) {
            addCriterion("up_agent_id <>", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdGreaterThan(String value) {
            addCriterion("up_agent_id >", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdGreaterThanOrEqualTo(String value) {
            addCriterion("up_agent_id >=", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdLessThan(String value) {
            addCriterion("up_agent_id <", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdLessThanOrEqualTo(String value) {
            addCriterion("up_agent_id <=", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdLike(String value) {
            addCriterion("up_agent_id like", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdNotLike(String value) {
            addCriterion("up_agent_id not like", value, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdIn(List<String> values) {
            addCriterion("up_agent_id in", values, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdNotIn(List<String> values) {
            addCriterion("up_agent_id not in", values, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdBetween(String value1, String value2) {
            addCriterion("up_agent_id between", value1, value2, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdNotBetween(String value1, String value2) {
            addCriterion("up_agent_id not between", value1, value2, "upAgentId");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsIsNull() {
            addCriterion("up_agent_ids is null");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsIsNotNull() {
            addCriterion("up_agent_ids is not null");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsEqualTo(String value) {
            addCriterion("up_agent_ids =", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsNotEqualTo(String value) {
            addCriterion("up_agent_ids <>", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsGreaterThan(String value) {
            addCriterion("up_agent_ids >", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsGreaterThanOrEqualTo(String value) {
            addCriterion("up_agent_ids >=", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsLessThan(String value) {
            addCriterion("up_agent_ids <", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsLessThanOrEqualTo(String value) {
            addCriterion("up_agent_ids <=", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsLike(String value) {
            addCriterion("up_agent_ids like", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsNotLike(String value) {
            addCriterion("up_agent_ids not like", value, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsIn(List<String> values) {
            addCriterion("up_agent_ids in", values, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsNotIn(List<String> values) {
            addCriterion("up_agent_ids not in", values, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsBetween(String value1, String value2) {
            addCriterion("up_agent_ids between", value1, value2, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andUpAgentIdsNotBetween(String value1, String value2) {
            addCriterion("up_agent_ids not between", value1, value2, "upAgentIds");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNull() {
            addCriterion("app_id is null");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNotNull() {
            addCriterion("app_id is not null");
            return (Criteria) this;
        }

        public Criteria andAppIdEqualTo(String value) {
            addCriterion("app_id =", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotEqualTo(String value) {
            addCriterion("app_id <>", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThan(String value) {
            addCriterion("app_id >", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThanOrEqualTo(String value) {
            addCriterion("app_id >=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThan(String value) {
            addCriterion("app_id <", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThanOrEqualTo(String value) {
            addCriterion("app_id <=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLike(String value) {
            addCriterion("app_id like", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotLike(String value) {
            addCriterion("app_id not like", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdIn(List<String> values) {
            addCriterion("app_id in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotIn(List<String> values) {
            addCriterion("app_id not in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdBetween(String value1, String value2) {
            addCriterion("app_id between", value1, value2, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotBetween(String value1, String value2) {
            addCriterion("app_id not between", value1, value2, "appId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}